﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace BidFunLib.Entity
{
    /// <summary>
    /// This class represents 
    /// </summary>
    public class BidSale
    {
        /// <summary>
        /// Technical Identifier  
        /// </summary>
        virtual public Int32 IdBidSale { get; set; }

        /// <summary>
        /// Object de la vente
        /// </summary>
        virtual public BidObject bidObject { get; set; }        


        virtual public BidObject BidObject
        {
            get
            { 
                return bidObject; 
            }
            set 
            { 
                bidObject = value;
                IdBidObject = bidObject.IdBidObject;
            }
        }

        /// <summary>
        /// Object de la vente
        /// </summary>
        virtual public Int32 IdBidObject {get;set;}
         
        /// <summary>
        /// Libelle de la vente
        /// </summary>
        virtual public String Label { get; set; }

        /// <summary>
        /// Date et heure debut de la vente
        /// </summary>
        virtual public DateTime StartDateTime {get; set;}

        /// <summary>
        /// date et heure de la fin de la vente
        /// </summary>
        virtual public DateTime EndDateTime { get; set; }

        /// <summary>
        /// Les robots bidFun sont-ils autorisés sur cette vente
        /// </summary>
        virtual public Boolean BidFunBotAuthorized { get; set; }

        /// <summary>
        /// Identifiant du site bid fun pour cette vente
        /// </summary>
        virtual public String BidFunIdentifier {get; set;}

        /// <summary>
        /// URL de la vente
        /// </summary>
        virtual public String BidURL {get; set;}

        /// <summary>
        /// Beginner Only
        /// </summary>
        virtual public Boolean BeginnerOnly { get; set;}

        /// <summary>
        /// 
        /// </summary>
        virtual public Int32 VerificationLapseTimeTick {get; set;}

        /// <summary>
        /// List des encheres de la vente
        /// </summary>
        virtual public List<BidLogger> BidloggerList {get; set;}

        /// <summary>
        /// Default constructor
        /// </summary>
        public BidSale()
        {
            IdBidSale = -1;
            BidloggerList = new List<BidLogger>();
            BidURL = null;
            VerificationLapseTimeTick = 0;
        }


    }
}
